package cc.idoone.codegen.table;

/**
 * <p>
 * 表字段类型
 * </p>
 *
 * @author hemj
 * @date 2020-08-25
 */
public enum ColumnJavaType {
	STRING("String", null),
	INTEGER("Integer", null),
	LONG("Long", null),
	FLOAT("Float", null),
	DOUBLE("Double", null),
	BOOLEAN("Boolean", null),
	BYTE_ARRAY("byte[]", null),
	CHARACTER("Character", null),
	OBJECT("Object", null),
	DATE("Date", "java.util.Date"),
	TIME("Time", "java.sql.Time"),
	BLOB("Blob", "java.sql.Blob"),
	CLOB("Clob", "java.sql.Clob"),
	TIMESTAMP("Timestamp", "java.sql.Timestamp"),
	BIG_INTEGER("BigInteger", "java.math.BigInteger"),
	BIG_DECIMAL("BigDecimal", "java.math.BigDecimal"),
	LOCAL_DATE("LocalDate", "java.time.LocalDate"),
	LOCAL_TIME("LocalTime", "java.time.LocalTime"),
	LOCAL_DATE_TIME("LocalDateTime", "java.time.LocalDateTime");

	/**
	 * 类型
	 */
	private final String name;

	/**
	 * 类型全称（包含完整包名）
	 */
	private final String fullName;

	ColumnJavaType(final String name, final String fullName) {
		this.name = name;
		this.fullName = fullName;
	}

	public String getName() {
		return this.name;
	}

	public String getFullName() {
		return this.fullName;
	}

}
